`%'
---

POLY % M
     :: $B@0?t$K$h$k>jM>(B

RETURN
     $B@0?t$^$?$OB?9`<0(B

POLY
     $B@0?t$^$?$O@0?t78?tB?9`<0(B

M
     $B@0?t(B

   * POLY $B$N3F78?t$r(B M $B$G3d$C$?>jM>$GCV$-49$($?B?9`<0$rJV$9(B.

   * $B7k2L$N78?t$OA4$F@5$N@0?t$H$J$k(B.

   * POLY $B$O@0?t$G$b$h$$(B. $B$3$N>l9g(B, $B7k2L$,@5$K@55,2=$5$l$k$3$H$r=|$1$P(B
     `irem()' $B$HF1MM$KMQ$$$k$3$H$,$G$-$k(B.

   * POLY $B$N78?t(B, M $B$H$b@0?t$G$"$kI,MW$,$"$k$,(B, $B%A%'%C%/$O9T$J$o$l$J$$(B.

     [0] (x+2)^5 % 3;
     x^5+x^4+x^3+2*x^2+2*x+2
     [1] (x-2)^5 % 3;
     x^5+2*x^4+x^3+x^2+2*x+1
     [2] (-5) % 4;
     3
     [3] irem(-5,4);
     -1

$B;2>H(B
     *Note `idiv irem': idiv irem.

